package com.tiancheng.trade.settlement.vo.settlement.export;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;

@Data
public class PaymentBillListExportVO {

    /**
     * 交易类型
     */
    private String transactionType;

    /**
     * 支付订单号
     */
    private String paymentId;

    /**
     * 渠道支付订单号
     */
    private String flowId;

    /**
     * 订单金额
     */
    private String orderAmount;

    /**
     * 优惠金额
     */
    private String discount;

    /**
     * 支付金额
     */
    private String payAmount;

    /**
     * 渠道费
     */
    private String serviceCharge;

    /**
     * 银行侧订单金额
     */
    private String bankOrderAmount;

    /**
     * 银行侧优惠金额
     */
    private String bankDiscount;

    /**
     * 银行侧支付金额
     */
    private String bankPayAmount;

    /**
     * 银行侧渠道费
     */
    private String bankServiceCharge;

    /**
     * 交易时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String payTime;

    /**
     * 对账时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String reconciliationTime;
    /**
     * 差异金额
     */
    public String diffAmount;

    /**
     * 备注差异原因
     */
    private String remark;

    public String getOrderAmount() {
        if (StringUtils.isEmpty(orderAmount)) {
            orderAmount = "0.00";
        }
        return orderAmount;
    }

    public String getDiscount() {
        if (StringUtils.isEmpty(discount)) {
            discount = "0.00";
        }
        return discount;
    }

    public String getPayAmount() {
        if (StringUtils.isEmpty(payAmount)) {
            payAmount = "0.00";
        }
        return payAmount;
    }

    public String getServiceCharge() {
        if (StringUtils.isEmpty(serviceCharge)) {
            serviceCharge = "0.00";
        }
        return serviceCharge;
    }

    public String getBankOrderAmount() {
        if (StringUtils.isEmpty(bankOrderAmount)) {
            bankOrderAmount = "0.00";
        }
        return bankOrderAmount;
    }

    public String getBankDiscount() {
        if (StringUtils.isEmpty(bankDiscount)) {
            bankDiscount = "0.00";
        }
        return bankDiscount;
    }

    public String getBankPayAmount() {
        if (StringUtils.isEmpty(bankPayAmount)) {
            bankPayAmount = "0.00";
        }
        return bankPayAmount;
    }

    public String getBankServiceCharge() {
        if (StringUtils.isEmpty(bankServiceCharge)) {
            bankServiceCharge = "0.00";
        }
        return bankServiceCharge;
    }

}
